export interface ServiceResponse<T> {
  msg: string
  data: T
}
// 登录表单信息
export interface FormType {
  mobile: string
  code: string
  agree: boolean
}
// 登录成功返回token
export interface FormRes {
  token: string
}

// 获取用户个人资料
export interface UserData {
  id: string
  name: string
  photo: string
  mobile: string
  gender: string
  birthday: string
}

// 获取频道列表
export interface ChannelList {
  channels: ChannelItem[] // 选项词条
}
export interface ChannelItem {
  id: string // 频道id
  name: string // 频道名称
}

// 筛选:获取文章列表
export interface ArticleParams {
  status?: 0 | 1 | 2 | 3 | '' // 文章状态，0-草稿，1-待审核，2-审核通过，3-审核失败，不传为全部
  channel_id: number // 必传，不传为全部
  begin_pubdate?: string // 起始时间，格式为 'YYYY-MM-DD'
  end_pubdate?: string // 截止时间，格式为 'YYYY-MM-DD'
  page?: number // 页码，默认为1页
  per_page?: number // 每页数量，默认为10
}

// 返回的文章列表信息
export interface ArticleList {
  page: number // 当前页数
  per_page: number // 每页数量
  results: ArticleItem[] // 文章列表
  total_count: number // 文章总数
}

export interface ArticleItem {
  id: string // 文章id
  title: string // 文章标题
  status: number // 文章状态
  comment_count: string // 评论数量
  pubdate: string // 发布时间
  cover: ArticleCover // 封面
  like_count: number // 点赞数
  read_count: string // 阅读数
}

export interface ArticleCover {
  type: string // 封面类型，0-无封面，1-1张封面图片，3-3张封面
  images: string[] // 封面图片数组
}

// 发表文章所需的参数
export interface PublishArticleParams {
  title: string // 文章标题
  content: string // 文章内容
  cover: Cover // 封面对象
  channel_id: number // 文章所属频道id
}

export interface Cover {
  type: number // 封面类型 -1:自动，0-无图，1-1张，3-3张
  images: string[] // 封面图片数组，item 类型: string
}


